In the Internet Protocol (IP), Internet Protocol, Version 6 (Ipv6) Specification, RFC 2460, published December 1998, packet world, most routers deal with entire IP packets to perform route look-up (LPM), 5-tuple lookup, provide quality of service (QoS), perform scheduling, and to do other tasks, such as metering and so on. Unfortunately, the physical interface supported by today's framing devices is not wide enough to move an entire variable sized from the framing device to the network processor in one contiguous transfer. As a result, each packet must be broken up into multiple data segments by the interface and passed to the network processor for processing. Therefore, a key challenge for routers is to identify a context with which each of the pieces of data that is received is associated, match each piece of data with the identified context and re-assemble the data pieces in a memory to re-construct the entire IP packet. Although not required, performing the re-assembly task prior to any of the actual work done by the network processor may simplify the packet-processing task. Thus, the effort associated with the re-assembly of the data segments into data packets defines the overhead of moving the data from the framing device to the network processor.